iT邦幫忙

2023 iThome 鐵人賽

DAY 19
0
Mobile Development

初窺Flutter系列 第 19

路由及導航-頁面跳轉

  • 分享至 

  • xImage
  •  

頁面跳轉是構建應用程序的重要部分之一,用於將用戶引導到不同的畫面或執行特定的操作

跳轉到新頁面
使用Navigator.push,下列程式碼使用MaterialPageRoute來定義要跳轉的目標頁面(SecondScreen)

 Navigator.push(
    context,
    new MaterialPageRoute(builder: (context)=> new SecondScreen())
 );

返回上一頁
使用 Navigator.pop

Navigator.pop(context);

<完整程式碼練習> 創建兩個頁面,其中各寫入一個按鈕,分別可觸發跳轉至其他頁的動作

import 'package:flutter/material.dart';

void main() {
  runApp(new MaterialApp(
    home: new FirstScreen()
  ));
}
//第一個頁面
class FirstScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text("頁面跳轉學習"),
        ),
        body: new Center(
          child: new ElevatedButton(
            child: new Text('去第二頁'),
            onPressed: (){
              Navigator.push(
                context,
                new MaterialPageRoute(builder: (context)=> new SecondScreen())
              );
            },
          )
        ),
      ),
    );
  }
}
//第二個頁面
class SecondScreen extends StatelessWidget{
  @override
  Widget build(BuildContext context){
    return new Scaffold(
      appBar: AppBar(
        title: Text("頁面跳轉學習"),
      ),
        body: new Center(
        child: new ElevatedButton(
          onPressed: (){
            Navigator.pop(context);
          },
          child: new Text ('返回第一頁'),
        )
        ),

    );
  }
}

執行結果於連結中的影片
https://imgur.com/a/L7DWMLg

MaterialPageRoute:用於創建基於 Material Design 樣式的頁面跳轉效果,可自定義過渡效果
Navigator.pop:用於返回頁面


上一篇
Flutter 資源匯入-自訂義字體
下一篇
路由及導航-頁面跳轉傳送參數
系列文
初窺Flutter30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言